﻿using Sidvall.Net.Mime;

namespace Sidvall.Net
{
    public class MediaTypeHeader
    {
        #region Public Members

        public MediaType MediaType { get; set; }
        public double? Quality { get; set; }

        #region Copy

        public MediaTypeHeader Copy()
        {
            var item = new MediaTypeHeader()
            {
                MediaType = this.MediaType,
                Quality = this.Quality,
            };
            return item;
        }

        #endregion
        #region IsEqual

        public bool IsEqual(MediaTypeHeader obj)
        {
            return IsEqual(this, obj);
        }

        #endregion
        #region IsEqual - Static

        public static bool IsEqual(MediaTypeHeader item1, MediaTypeHeader item2)
        {
            if (item1 == null)
            {
                if (item2 == null)
                    return true;
                else
                    return false;
            }
            else if (item2 == null)
                return false;
            if (item1.MediaType != item2.MediaType)
                return false;
            if (!(item1.Quality == item2.Quality))
                return false;
            return true;
        }

        #endregion

        #endregion
    }
}
